1. Field of Invention
The present invention relates to grid computing systems. More specifically, the invention relates to allowing different management frameworks to be integrated for use with an enterprise management system.
2. Description of the Related Art
Grid computing is a type of distributed computing that is becoming more prevalent as the use of shared resources in computing systems increases. In grid computing, computing and information resources are shared substantially transparently in a secure, highly efficient manner. In other words, computing and information resources are provided using a plurality of computers or computing systems which function as an overall virtual computing system. Once a grid is in place, a user may effectively have access to a virtual computing system that is adaptable and reliable. Such a virtual computing system generally includes a variety of different computing resources which are not individually “visible” to the user. A user is typically only aware that information or computation may be requested and delivered, and is not aware of the source which processes and delivers on the request. That is, while a user may not be aware which component of a grid processes and delivers on a request, the user is aware that a request will be acted on by some component of the grid.
A collection of networked grid components, e.g., different management frameworks and databases, that are managed by a single enterprise is an enterprise grid. The single enterprise may be a business entity that is responsible for managing a pool of resources, a set of services, and the assignment of resources to services such that business goals may be accomplished. Within an enterprise grid, networked resources may be pooled and shared, and services may be substantially automatically provisioned. An enterprise may provision resources and services to efficiently respond to a request from a user or a client.
By distributing work across many computing systems, enterprise grid computing enhances the availability and scalability of resources. Resources and services or, more generally, computing systems that are included in an enterprise grid, are typically associated with management frameworks. Such management frameworks, which may each include computers and databases, are integrated such that they may function overall as a virtual computing system using an enterprise manager. The enterprise manager typically identifies a management system or framework, i.e., a server, that is most appropriate for providing a resource or a service requested by another management system or framework, i.e., a client.
In some instances, management frameworks created by different vendors or parties are used within an enterprise grid computing system. Unless the management frameworks are integrated, the management of the enterprise grid is generally highly complex, time consuming, tedious, and maybe even infeasible. It involves a lot of manual intervention at the best.
Interfaces between an enterprise manager and each management framework may be created to facilitate the integration of the management frameworks. With reference to FIG. 1, the interfaces between management systems or management frameworks and an enterprise manager will be described. An enterprise grid computing system 100 generally includes an enterprise manager 104 that is in communication with a management repository 108, and a plurality of management frameworks 112a-c, or third-party management systems. Typically, enterprise manager 104 is in itself a management framework that is arranged to monitor or to manage applications and databases associated with a management framework (not shown) which was created such that it is compatible with enterprise manager 104. That is, enterprise manager 104 is typically configured to substantially automatically manage applications and databases that are created by the same party that created enterprise manager 104.
Management frameworks 112a-c, as shown, are third-party management systems with respect to enterprise manager 104. In other words, management frameworks 112a-c and enterprise manager 104 are not created by the same party. Hence, management frameworks 112a-c generally must be integrated with enterprise manager 104 if enterprise manager 104 is to effectively manage, monitor, and troubleshoot within enterprise grid computing system 100. Integrations 116a-c are typically created by management frameworks 112a-c to enable management frameworks 112a-c to interface with enterprise manager 104. By way of example, management framework 112a creates integration 116a that allows enterprise manager 104 to manage management framework 112a, as well as to enable enterprise manager 104 to communicate bi-directionally with management framework 112a. 
To enable management frameworks 112a-c to create integrations 116a-c, enterprise manager 104 generally publishes data in the form of application programming interfaces (APIs) that may be accessed by management frameworks 112a-c to determine how to create integrations 116a-c. The same is also true for the integrating management frameworks. It should be appreciated that creating integrations 116a-c is often time-consuming. As APIs are not standardized, the process of creating integrations 116a-c is a tedious, non-scaleable process. Often, any change to either a management framework 112a-c or to enterprise manager 104 may result in changes having to be made to a corresponding integration 116a-c. Further, as some enterprise managers 104 do not actually publish APIs, it may not always be possible to integrate a management framework 112a-c with enterprise manager 104.
In general, enterprise manager 104 and management frameworks 112a-c may communicate bi-directionally through integrations 116a-c that are point-to-point connections. In other words, enterprise manager 104 calls management frameworks 112a-c substantially directly using integrations 116a-c, and management frameworks 112a-c call enterprise manager 104 substantially directly using integrations 116a-c. In order to establish integrations 116a-c, as previously mentioned, management frameworks 112a-c typically access APIs associated with enterprise manager 104. With reference to FIG. 2, the steps associated with a standard method of allowing an enterprise manager and a management framework to communicate substantially directly will be described. A method 200 of allowing a management framework, i.e., a third-party management framework relative to an enterprise manager, to communicate substantially directly with the enterprise manager begins at step 204 in which APIs associated with the enterprise manager are exposed or otherwise obtained by the management framework. An integration is built in step 208 by the management framework using the APIs. An integration is generally arranged to enable the management framework to be integrated with a management service associated with the enterprise manager. That is, an integration is built that essentially allows the enterprise manager to communicate with the management framework bi-directionally such that the enterprise manager may manage the management framework.
Once the integration is built, the management framework is integrated with the management service associated with the enterprise manager using the integration in step 212. After the management framework is integrated with the enterprise manager, the process of allowing an enterprise manager and the management framework to communicate substantially directly is completed.
If an enterprise manager does not publish APIs, it may not be possible to integrate a third-party management framework with the enterprise manager. Even when APIs are published, creating an integration between the enterprise manager and the third-party management framework may be time-consuming. Further, as previously mentioned, creating a point-to-point connection or an integration between a third-party management framework and an enterprise manager, while effective, is not scaleable. By way of example, if there is a change to an API associated with the enterprise manager, the integration may need to be updated. In addition, each time a new, different third-party management framework is to be managed by the enterprise manager, a new integration generally must be created.
As allowing management frameworks to be integrated and managed by an enterprise manager within an enterprise grid computing system is critical to the operation of the enterprise grid computing system, what is desired is a method and an apparatus which allows management frameworks to be efficiently integrated with an enterprise manager. That is, what is needed is an integration arrangement that effectively allows management frameworks to be integrated with an enterprise manager substantially without requiring the management frameworks to create individual integrations for use with the enterprise manager.